package com.xpec.c4.persistence;

import java.util.HashMap;

/**
 * FlyWeight工厂需要实现的通用接口
 * 
 * @author Magmaster
 * 
 */
public interface IFlyWeightManager
{
	/**
	 * 根据给定参数获得一个flyweight对象
	 * 
	 * @param params
	 *            参数，要求参数中存在key为"id"的项
	 * @return flyweight对象，如果不存在则返回null
	 */
	public Object getFlyWeight(HashMap<String, Object> params);

	/**
	 * 根据给定参数生成一个FlyWeight对象
	 * 
	 * @param params
	 *            参数，要求key中存在key为"id"和"class"的项
	 * @return 生成的FlyWeight对象
	 */
	public Object createFlyWeight(HashMap<String, Object> params);
}
